iT邦幫忙

2024 iThome 鐵人賽

DAY 20
0
AI/ ML & Data

資料科學的小筆記系列 第 20

Day20:使用dplyr進行篩選資料列

  • 分享至 

  • xImage
  •  

今天要來紀錄Filtering Joins函式,這些函式可以用來過濾表格中的列,是根據另一個資料表來決定哪些列應該保留或排除。

建立範例資料表

library(dplyr)

# 建立表格 x
x <- tribble(
  ~A,  ~B, ~C,
  "a", "t",  1,
  "b", "u",  2,
  "c", "v",  3
)

# 建立表格 y
y <- tribble(
  ~A,  ~B, ~D,
  "a", "t",  3,
  "b", "u",  2,
  "d", "w",  1
)
  1. semi_join(): 保留有匹配的資料列
    說明: semi_join() 會回傳左表(x)中與右表(y)有匹配的資料列,但不包含右表的資料。
# semi_join 保留有匹配的資料列
semi_join_result <- semi_join(x, y, by = c("A", "B"))

# 查看結果
print(semi_join_result)

https://ithelp.ithome.com.tw/upload/images/20240831/20168607MndqPPYyoY.png

  1. semi_join(): 排除有匹配的資料列
    說明: anti_join() 會回傳左表(x)中沒有與右表(y)匹配的資料列。
# anti_join 排除有匹配的資料列
anti_join_result <- anti_join(x, y, by = c("A", "B"))

# 查看結果
print(anti_join_result)

https://ithelp.ithome.com.tw/upload/images/20240831/20168607adDctv1lro.png

參考資料:

  1. Data transformation with dplyr :: Cheatsheet

上一篇
Day19:使用dplyr進行資料表連結
下一篇
Day21:使用dplyr進行嵌套連接(Nest Join)
系列文
資料科學的小筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言